Development of a software application includes creation of design-time programming artifacts. Developers create these artifacts by writing code and storing the code into various “source” files. In order to generate an executable application, certain ones of the artifacts are flagged as active, validated, and compiled into corresponding runtime artifacts. The runtime artifacts are then deployed for execution.
Software development systems provide support for this file-based software development process. This support includes editing environments as well as systems which provide versioning and lifecycle management for the source files.
Operation of a software application may rely on tabular data, such as configuration data, which is preferably shipped along with corresponding versions of the software application. However, existing software development systems are incapable of efficiently managing tabular data. As a result, existing systems are not suitable for establishing a common lifecycle for code and tabular data of a software application.